DWARF(4) DWARF(4) NAME dwarf - dwarf version 2 debugging information format SYNOPSIS #include DESCRIPTION DWARF is a format for the information generated by compilers, assemblers, and linkage editors that is necessary for source-level debugging. It allows a compact representation of programs in many languages and is easily extended to handle additional languages and individual compiler/debugger requirements. Consumers reading DWARF information they do not understand are able to easily skip past that information, meaning that older consumers are not broken by the addition of new features. DWARF itself does not specify how to generate or use the information. Instead, it defines the 'bits on the disc'. See the libdwarf(4) man page for information on reading and writing DWARF information. This format was designed by a multi-company committee called the PLSIG working under the auspices of Unix International. The format is based on the SVR4 debugging information format, (which might be called version 0) and a codification of that format developed by the committee (which was called version 1). Version 2 was designed by the committee to reduce the disk space used and to add descriptive power (as compared to versions 0 and 1). The Version 2.0.0 Industry Review Draft was made available July, 1993. The document provided below is that Draft. For details of the format see the document DWARF Debugging Information Format, which is the file dwarf.v2.mm in the IDO/dev option subsystem compiler_dev.opt.dwarf. The file index.v2.mm is an index to that document. The .ps files are PostScript versions of the same files. The DWARF debugging information is present only in programs compiled -n32 or -64. This information is put, as needed, into sections of an ELF object file named .debug_info, .debug_frame, .debug_line, .debug_aranges, .debug_loc, .debug_frame, .debug_str, .debug_abbrev, .debug_pubnames, .debug_weaknames, .debug_funcnames, .debug_typenames, and .debug_varnames. With programs compiled -32, the compiler puts debugging information into the .mdebug section of the ELF file (the section format is identical to the IRIX 4 COFF symbol table, so the .mdebug section is sometimes referred to as 'the symbol table', though this is incorrect terminology now). FILES /usr/share/src/compiler/dwarf/dwarf.v2.mm /usr/share/src/compiler/dwarf/dwarf.v2.ps /usr/share/src/compiler/dwarf/index.v2.mm /usr/share/src/compiler/dwarf/index.v2.ps Page 1 DWARF(4) DWARF(4) SEE ALSO libdwarf(4) dwarfdump(1) Page 2